In the automotive field in recent years, vehicles have progressed in functionality, and a diverse range of devices are installed on vehicles. Accordingly, vehicles are equipped with large numbers of control devices, so-called ECUs (Electronic Control Units), for controlling these on-vehicle devices.
Examples of types of ECUs include: traveling-type ECUs that control an engine, a brake, EPS (Electric Power Steering), and the like in response to operations on an accelerator, a brake, and a handle; body-type ECUs that control ON/OFF of interior lights and headlights, sound of an alarm unit, and the like in response to switch operations performed by an occupant; and meter-type ECUs that control operations of meters arranged near the driver's seat.
Generally, each ECU consists of an arithmetic processing unit such as a microcomputer, and implements a control of an on-vehicle device by reading out a control program stored in an ROM (Read Only Memory), and executing the read control program.
Control programs of ECUs may differ depending on the shipping destinations, grades, etc., of vehicles. Therefore, old versions of control programs need to be overwritten with new versions of control programs in response to upgrading of control programs. Further, data required for execution of the control programs, such as map information and control parameters, also need to be overwritten.
For example, Patent Literature 1 discloses a technique (on-line update function) of downloading an update program via a network, and performing update of a program by using the update program.